"""
需求：演示TCP入门，即服务器端给客户端发送一句话，客户端收到后，给出回执信息
流程：
    1：服务器端 =》客户端发送一句话
    2：客户端接收到消息，打印，并给出回执信息，消息已收到
    3：服务器端收到客户端的回执后，打印即可

客户端，实现步骤：
    1：创建客户端的socket对象
    2：连接服务器端的IP地址和端口号
    3：接收服务器端发过来的信息（二进制），需要解码为字符串，并打印
    4：给服务器端发送一句话，二进制形式
    5：释放资源，关闭socket
"""
# 客户端代码
import socket

# 1：创建客户端的socket对象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print('客户端启动成功')

# 2：连接服务器端的IP地址和端口号
client_socket.connect(('192.168.40.56', 12307))
print('连接服务器成功')

# 给服务器端源源不断的发送一句话，二进制的格式
while True:
    # 3：接收服务器端发过来的信息（二进制），需要解码为字符串，并打印
    data = input('请输入要给服务器发送的消息：')

    # 4：给服务器端发送一句话，二进制形式
    client_socket.send(data.encode("utf-8"))

    # 如果客户端输入的是886，则退出循环
    if data == '886':
        break

# 5：释放资源，关闭socket
client_socket.close()